import request from '@/config/axios'


// AI 视频 VO
export interface VideoVO {
  id: number // 编号
  userId: number // 用户编号
  videoUrl: string //视频
  imageUrl: string
  thumbnailUrl: string // 缩略图
  progress: number // 进度状态
  status: number // 完成状态（success/failure）
  platform: string // 平台
  model: string // 模型
  funcType: string
  promptModel: string
  seed: number
  promptText: string
  watermark: boolean
  duration: number
  ratio: string
}

export interface ImageToVideoReqVO {
  platform: string // 平台
  model: string // 模型
  funcType: string
  fileList: string[] //图片连接
  promptModel: string
  seed: number
  promptText: string
  watermark: boolean
  duration: number
  ratio: string
}


// AI 视频 API
export const VideoApi = {
  // 查询AI 3D模型分页
  getVideoPage: async (params: any) => {
    return await request.get({ url: `/ai/video/page`, params })
  },

  // 查询AI 3D模型详情
  getVideo: async (id: number) => {
    return await request.get({ url: `/ai/video/get?id=` + id })
  },

  // 新增AI 3D模型
  createVideo: async (data: VideoVO) => {
    return await request.post({ url: `/ai/video/create`, data })
  },

  // 修改AI 3D模型
  updateVideo: async (data: VideoVO) => {
    return await request.put({ url: `/ai/video/update`, data })
  },

  // 删除AI 3D模型
  deleteVideo: async (id: number) => {
    return await request.delete({ url: `/ai/video/delete?id=` + id })
  },

  // 获取【我的】绘图记录列表
  getVideoListMyByIds: async (ids: number[]) => {
    return await request.get({ url: `/ai/video/my-list-by-ids`, params: { ids: ids.join(',') } })
  },
  // 生成模型纹理
  generateImageToVideo: async (data: ImageToVideoReqVO) => {
    return await request.post({ url: `/ai/video/imageToVideo`, data })
  },
}

